<html>
<head><meta charset="utf-8"><title>meeting 2019.12.10 · t-compiler/wg-polonius · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/index.html">t-compiler/wg-polonius</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html">meeting 2019.12.10</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="183096240"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096240" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096240">(Dec 10 2019 at 20:00)</a>:</h4>
<p>good evening :)</p>



<a name="183096342"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096342" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096342">(Dec 10 2019 at 20:01)</a>:</h4>
<p>in case you haven't seen it, the great Mattew reviewed <a href="https://github.com/rust-lang/rust/pull/67016" target="_blank" title="https://github.com/rust-lang/rust/pull/67016">https://github.com/rust-lang/rust/pull/67016</a></p>



<a name="183096410"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096410" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096410">(Dec 10 2019 at 20:02)</a>:</h4>
<p>and it landed, so we now have subset errors in rustc using <code>-Zpolonius</code></p>



<a name="183096457"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096457" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096457">(Dec 10 2019 at 20:02)</a>:</h4>
<p><span aria-label="wave" class="emoji emoji-1f44b" role="img" title="wave">:wave:</span></p>



<a name="183096460"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096460" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096460">(Dec 10 2019 at 20:03)</a>:</h4>
<p>that's awesome!</p>



<a name="183096468"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096468" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096468">(Dec 10 2019 at 20:03)</a>:</h4>
<p>I had not noticed, no</p>



<a name="183096478"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096478" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096478">(Dec 10 2019 at 20:03)</a>:</h4>
<p>and (this one Albin has seen) I have been able to "replace" the work lokalmatador did on profiling, by adding a couple of new activities in <code>-Z self-profile</code> in <a href="https://github.com/rust-lang/rust/pull/67193" target="_blank" title="https://github.com/rust-lang/rust/pull/67193">https://github.com/rust-lang/rust/pull/67193</a></p>



<a name="183096487"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096487" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096487">(Dec 10 2019 at 20:03)</a>:</h4>
<p>which the great Wesley has <em>already reviewed</em></p>



<a name="183096569"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096569" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096569">(Dec 10 2019 at 20:04)</a>:</h4>
<p>I was wondering if y'all thought we needed to differentiate profiling data (by def_id or something) right now ? or if this aggregation was already useful</p>



<a name="183096630"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096630" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096630">(Dec 10 2019 at 20:04)</a>:</h4>
<p>hmm</p>



<a name="183096633"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096633" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096633">(Dec 10 2019 at 20:04)</a>:</h4>
<p>IIRC</p>



<a name="183096640"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096640" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096640">(Dec 10 2019 at 20:04)</a>:</h4>
<p>when I found hotspots</p>



<a name="183096646"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096646" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096646">(Dec 10 2019 at 20:05)</a>:</h4>
<p>it was usually one function that dominated the time</p>



<a name="183096662"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096662" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096662">(Dec 10 2019 at 20:05)</a>:</h4>
<p>which might argue for being able to differentiate</p>



<a name="183096713"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096713" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096713">(Dec 10 2019 at 20:05)</a>:</h4>
<p>however, I feel like this is something that the timer would want to support more generically</p>



<a name="183096716"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096716" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096716">(Dec 10 2019 at 20:05)</a>:</h4>
<p><span class="user-mention" data-user-id="204115">@Albin Stjerna</span> so yeah I remember you've been wanting to refactor more of fact generation, as mentioned in the PR, and this was mostly a cleanup of the existing one (in case you had conflicts in your existing PRs, or opinions about this one)</p>



<a name="183096719"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096719" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096719">(Dec 10 2019 at 20:05)</a>:</h4>
<p>in fact it's going to yes</p>



<a name="183096724"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096724" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096724">(Dec 10 2019 at 20:05)</a>:</h4>
<p>mw has been working on it apparently</p>



<a name="183096736"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096736" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096736">(Dec 10 2019 at 20:05)</a>:</h4>
<p>also, what is the status of <span class="user-mention" data-user-id="204115">@Albin Stjerna</span>'s initialization work..? I see I have like 21 unread messages over in that topic</p>



<a name="183096740"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096740" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096740">(Dec 10 2019 at 20:06)</a>:</h4>
<p>Err</p>



<a name="183096784"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096784" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096784">(Dec 10 2019 at 20:06)</a>:</h4>
<p>I want to land PRs!!</p>



<a name="183096795"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096795" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096795">(Dec 10 2019 at 20:06)</a>:</h4>
<p>/me has completely forgotten about those messages</p>



<a name="183096802"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096802" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096802">(Dec 10 2019 at 20:06)</a>:</h4>
<p>Oh those were off topic!</p>



<a name="183096813"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096813" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096813">(Dec 10 2019 at 20:06)</a>:</h4>
<p>there's a WIP PR you can review niko, right Albin ? or did that need more work (beside testing, that is)</p>



<a name="183096819"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096819" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096819">(Dec 10 2019 at 20:06)</a>:</h4>
<p>OK.</p>



<a name="183096823"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096823" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096823">(Dec 10 2019 at 20:06)</a>:</h4>
<p>Basically, we're waiting for me to get my behind in gear and rebase on @lqd's changes :)</p>



<a name="183096827"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096827" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096827">(Dec 10 2019 at 20:06)</a>:</h4>
<p>I think</p>



<a name="183096833"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096833" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096833">(Dec 10 2019 at 20:07)</a>:</h4>
<p>I'm already getting back that feeling of "aaah can't remember where things were"</p>



<a name="183096839"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096839" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096839">(Dec 10 2019 at 20:07)</a>:</h4>
<p>I <em>think</em> as well</p>



<a name="183096850"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096850" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096850">(Dec 10 2019 at 20:07)</a>:</h4>
<p>it was nice when we did the sprint and I felt I had all the context at hand :)</p>



<a name="183096858"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096858" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096858">(Dec 10 2019 at 20:07)</a>:</h4>
<p>Yes, same</p>



<a name="183096874"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096874" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096874">(Dec 10 2019 at 20:07)</a>:</h4>
<p>I'm hearing "polonius sprint 100% of the time"</p>



<a name="183096884"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096884" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096884">(Dec 10 2019 at 20:07)</a>:</h4>
<p>lol YES</p>



<a name="183096885"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096885" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096885">(Dec 10 2019 at 20:07)</a>:</h4>
<p>from now on <span aria-label="tada" class="emoji emoji-1f389" role="img" title="tada">:tada:</span></p>



<a name="183096886"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096886" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096886">(Dec 10 2019 at 20:07)</a>:</h4>
<p>It's even worse now because I write Scala now and it's similar enough to Rust to completely mess up my sense of both languages</p>



<a name="183096897"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096897" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096897">(Dec 10 2019 at 20:07)</a>:</h4>
<p>there's a <a href="https://github.com/rust-lang/polonius/pull/135#issuecomment-558809090" target="_blank" title="https://github.com/rust-lang/polonius/pull/135#issuecomment-558809090">comment here</a> that seems to summarize some state</p>



<a name="183096959"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096959" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096959">(Dec 10 2019 at 20:08)</a>:</h4>
<p>I guess what I remember is</p>



<a name="183096962"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096962" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096962">(Dec 10 2019 at 20:08)</a>:</h4>
<p>yes those were mostly for the parsing and testing</p>



<a name="183096969"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096969" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096969">(Dec 10 2019 at 20:08)</a>:</h4>
<p>that over the sprint we kind of worked out what the rules "should be" in the hackmd</p>



<a name="183096973"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096973" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096973">(Dec 10 2019 at 20:08)</a>:</h4>
<p>which can be seen as independent I feel</p>



<a name="183096981"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096981" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096981">(Dec 10 2019 at 20:08)</a>:</h4>
<p>I think so too</p>



<a name="183096986"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096986" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096986">(Dec 10 2019 at 20:08)</a>:</h4>
<p>not sure how much that compared with what's in the PR</p>



<a name="183096997"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096997" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096997">(Dec 10 2019 at 20:08)</a>:</h4>
<p>those new rules are in the PR right ?</p>



<a name="183096998"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183096998" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183096998">(Dec 10 2019 at 20:08)</a>:</h4>
<p>It should be the same now</p>



<a name="183097004"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097004" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097004">(Dec 10 2019 at 20:08)</a>:</h4>
<p>there was that one sticking point about whether we had to track "any initialized subpath" or "just the variable" for the drop code</p>



<a name="183097006"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097006" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097006">(Dec 10 2019 at 20:08)</a>:</h4>
<p>right, awesome</p>



<a name="183097010"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097010" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097010">(Dec 10 2019 at 20:08)</a>:</h4>
<p>and I sort of remember that it probably didn't matter anyway</p>



<a name="183097015"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097015" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097015">(Dec 10 2019 at 20:09)</a>:</h4>
<p>ok, great</p>



<a name="183097017"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097017" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097017">(Dec 10 2019 at 20:09)</a>:</h4>
<p>Yes, they should be the same, with the exception of the parent/child reverse relation</p>



<a name="183097025"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097025" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097025">(Dec 10 2019 at 20:09)</a>:</h4>
<p>That I insisted on :)</p>



<a name="183097026"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097026" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097026">(Dec 10 2019 at 20:09)</a>:</h4>
<p>so I guess that in terms of review, I could try to compare the hackmd vs the PR and read that</p>



<a name="183097046"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097046" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097046">(Dec 10 2019 at 20:09)</a>:</h4>
<p>ok :)</p>



<a name="183097054"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097054" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097054">(Dec 10 2019 at 20:09)</a>:</h4>
<p>besides unit testing in polonius itself, as opposed to in rustc, this should be ready to review then ?</p>



<a name="183097079"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097079" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097079">(Dec 10 2019 at 20:09)</a>:</h4>
<blockquote>
<p>and I sort of remember that it probably didn't matter anyway</p>
</blockquote>
<p>You sort of convinced me to do the "less precise" one, but I'm still not fully convinced</p>



<a name="183097093"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097093" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097093">(Dec 10 2019 at 20:09)</a>:</h4>
<p>Anyway, that version is in the code now</p>



<a name="183097194"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097194" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097194">(Dec 10 2019 at 20:10)</a>:</h4>
<p>I'm really looking forward to the Christmas Holiday Sprint</p>



<a name="183097198"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097198" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097198">(Dec 10 2019 at 20:10)</a>:</h4>
<p><span class="user-mention" data-user-id="204115">@Albin Stjerna</span>  when you mention rebasing over my changes, you mean your init work on the rustc side, which goes with your open polonius PR ?</p>



<a name="183097215"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097215" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097215">(Dec 10 2019 at 20:11)</a>:</h4>
<p>I feel the less precise one is "more correct", but I think I also convinced myself that it didn't matter in practice, because we of the limitations around how we allow initialization of subpaths etc</p>



<a name="183097219"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097219" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097219">(Dec 10 2019 at 20:11)</a>:</h4>
<p><span class="user-mention" data-user-id="116113">@lqd</span> Both really, also your work on polonius?</p>



<a name="183097222"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097222" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097222">(Dec 10 2019 at 20:11)</a>:</h4>
<p>that is, there's no open PR for the rustc side yet, right ?</p>



<a name="183097228"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097228" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097228">(Dec 10 2019 at 20:11)</a>:</h4>
<p>Or maybe that isn't merged yet?</p>



<a name="183097233"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097233" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097233">(Dec 10 2019 at 20:11)</a>:</h4>
<p>ah yes, right right</p>



<a name="183097238"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097238" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097238">(Dec 10 2019 at 20:11)</a>:</h4>
<p>everything's merged now</p>



<a name="183097266"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097266" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097266">(Dec 10 2019 at 20:11)</a>:</h4>
<p>I don't even have an open PR for my rust changes yet I think</p>



<a name="183097312"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097312" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097312">(Dec 10 2019 at 20:12)</a>:</h4>
<p>probably just in a branch yeah</p>



<a name="183097348"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097348" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097348">(Dec 10 2019 at 20:12)</a>:</h4>
<p>at least you're not blocked on me so that's good</p>



<a name="183097350"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097350" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097350">(Dec 10 2019 at 20:12)</a>:</h4>
<p>Yes, and it's mostly a matter of emitting moves for variables at the start of each function</p>



<a name="183097357"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097357" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097357">(Dec 10 2019 at 20:12)</a>:</h4>
<p>No!</p>



<a name="183097362"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097362" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097362">(Dec 10 2019 at 20:12)</a>:</h4>
<p>I'm just blocked on time</p>



<a name="183097377"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097377" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097377">(Dec 10 2019 at 20:12)</a>:</h4>
<p>a tough enemy</p>



<a name="183097442"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097442" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097442">(Dec 10 2019 at 20:13)</a>:</h4>
<p>OK.</p>



<a name="183097497"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097497" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097497">(Dec 10 2019 at 20:14)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> wrt to the WIP error, do you have thoughts on testing: would you rather we add all the missing facts in the parser and so on (possibly looking more like the old borrowck test syntax etc, to have paths etc etc) now ?</p>



<a name="183097498"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097498" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097498">(Dec 10 2019 at 20:14)</a>:</h4>
<p>can we land the polonius PR?</p>



<a name="183097523"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097523" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097523">(Dec 10 2019 at 20:14)</a>:</h4>
<p>what is the "WIP error"</p>



<a name="183097534"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097534" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097534">(Dec 10 2019 at 20:14)</a>:</h4>
<p>dang</p>



<a name="183097548"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097548" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097548">(Dec 10 2019 at 20:14)</a>:</h4>
<p>the WIP move errors PR I meant sorry</p>



<a name="183097573"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097573" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097573">(Dec 10 2019 at 20:15)</a>:</h4>
<p><a href="https://github.com/rust-lang/polonius/pull/135" target="_blank" title="https://github.com/rust-lang/polonius/pull/135">https://github.com/rust-lang/polonius/pull/135</a></p>



<a name="183097581"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097581" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097581">(Dec 10 2019 at 20:15)</a>:</h4>
<p>yeah ok that's kind of what I was asking too</p>



<a name="183097593"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097593" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097593">(Dec 10 2019 at 20:15)</a>:</h4>
<p>/me thinks</p>



<a name="183097609"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097609" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097609">(Dec 10 2019 at 20:15)</a>:</h4>
<p>ok so there are sort of two things</p>



<a name="183097622"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097622" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097622">(Dec 10 2019 at 20:15)</a>:</h4>
<p>first, creating tests that use facts generated by rustc</p>



<a name="183097667"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097667" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097667">(Dec 10 2019 at 20:16)</a>:</h4>
<p>which I guess we can do with a WIP branch</p>



<a name="183097689"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097689" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097689">(Dec 10 2019 at 20:16)</a>:</h4>
<p>second, being able to write tests that are standalone</p>



<a name="183097694"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097694" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097694">(Dec 10 2019 at 20:16)</a>:</h4>
<p>which would involve adding things to the parser?</p>



<a name="183097698"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097698" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097698">(Dec 10 2019 at 20:16)</a>:</h4>
<p>right</p>



<a name="183097711"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097711" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097711">(Dec 10 2019 at 20:16)</a>:</h4>
<p>I do think we should create a better "unit test" language, more like the old thing</p>



<a name="183097719"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097719" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097719">(Dec 10 2019 at 20:16)</a>:</h4>
<p>I'm not sure if you've put any thought into what it might look like, that could be a useful exercise</p>



<a name="183097740"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097740" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097740">(Dec 10 2019 at 20:17)</a>:</h4>
<p>just adding those relations is relatively easy, the better unit test language is a bit more involved than just adding raw facts support to the parser</p>



<a name="183097754"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097754" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097754">(Dec 10 2019 at 20:17)</a>:</h4>
<p>but it seems like we're going to want to be able to distill tests and patterns into something readable</p>



<a name="183097760"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097760" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097760">(Dec 10 2019 at 20:17)</a>:</h4>
<p>right</p>



<a name="183097765"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097765" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097765">(Dec 10 2019 at 20:17)</a>:</h4>
<p>But I guess the more advanced language would still be syntactic sugar for the same thing?</p>



<a name="183097773"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097773" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097773">(Dec 10 2019 at 20:17)</a>:</h4>
<p>yeah</p>



<a name="183097786"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097786" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097786">(Dec 10 2019 at 20:17)</a>:</h4>
<p>we <em>probably</em> want both</p>



<a name="183097788"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097788" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097788">(Dec 10 2019 at 20:17)</a>:</h4>
<p>So it might not me completely wasted work to spend some time writing base facts</p>



<a name="183097806"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097806" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097806">(Dec 10 2019 at 20:17)</a>:</h4>
<p>absolutely, to the both of you</p>



<a name="183097817"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097817" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097817">(Dec 10 2019 at 20:18)</a>:</h4>
<p>that is, I'm sort of imagining it'd be nice to be able to "hand specify" the input facts in a precise way</p>



<a name="183097856"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097856" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097856">(Dec 10 2019 at 20:18)</a>:</h4>
<p>but also have some short-hand</p>



<a name="183097888"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097888" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097888">(Dec 10 2019 at 20:18)</a>:</h4>
<p>I'll try adding the quicker ones soon</p>



<a name="183097919"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097919" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097919">(Dec 10 2019 at 20:19)</a>:</h4>
<p>as I haven't seen the others, say, the paths but maybe it's straightforward</p>



<a name="183097953"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097953" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097953">(Dec 10 2019 at 20:19)</a>:</h4>
<p>we could take 10 minutes to sketch what it might look like</p>



<a name="183097968"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097968" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097968">(Dec 10 2019 at 20:19)</a>:</h4>
<p>the nicer version, I mean</p>



<a name="183097974"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097974" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097974">(Dec 10 2019 at 20:19)</a>:</h4>
<p>the better unit test language you mean</p>



<a name="183097977"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097977" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097977">(Dec 10 2019 at 20:19)</a>:</h4>
<p>or maybe it's not a good use of this time</p>



<a name="183097980"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183097980" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183097980">(Dec 10 2019 at 20:19)</a>:</h4>
<p>:)</p>



<a name="183098055"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183098055" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183098055">(Dec 10 2019 at 20:20)</a>:</h4>
<p>so for reference your ~old~ prior syntax was <a href="https://github.com/nikomatsakis/borrowck/tree/master/test" target="_blank" title="https://github.com/nikomatsakis/borrowck/tree/master/test">https://github.com/nikomatsakis/borrowck/tree/master/test</a></p>



<a name="183098126"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183098126" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183098126">(Dec 10 2019 at 20:21)</a>:</h4>
<p>yeah</p>



<a name="183098137"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183098137" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183098137">(Dec 10 2019 at 20:21)</a>:</h4>
<p>one question mark would be how much of a "type system" we want</p>



<a name="183098139"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183098139" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183098139">(Dec 10 2019 at 20:21)</a>:</h4>
<p>I remember wrestling with this</p>



<a name="183098270"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183098270" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183098270">(Dec 10 2019 at 20:22)</a>:</h4>
<p><a href="https://github.com/nikomatsakis/borrowck/blob/master/test/borrowck-write-struct-containing-mutable-ref-whose-referent-is-mutably-borrowed.nll" target="_blank" title="https://github.com/nikomatsakis/borrowck/blob/master/test/borrowck-write-struct-containing-mutable-ref-whose-referent-is-mutably-borrowed.nll">https://github.com/nikomatsakis/borrowck/blob/master/test/borrowck-write-struct-containing-mutable-ref-whose-referent-is-mutably-borrowed.nll</a> seems representative</p>



<a name="183098317"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183098317" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183098317">(Dec 10 2019 at 20:23)</a>:</h4>
<p>I think we probably do want the ability to declare "structs"</p>



<a name="183098345"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183098345" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183098345">(Dec 10 2019 at 20:23)</a>:</h4>
<p>so that you can write things like <code>a.b.c = foo</code> and it can figure out the type relationships from that</p>



<a name="183098429"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183098429" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183098429">(Dec 10 2019 at 20:24)</a>:</h4>
<p>albeit without assertions here but that reminds me, were those good ? would we want them in the "program" like this language has ?</p>



<a name="183098431"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183098431" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183098431">(Dec 10 2019 at 20:24)</a>:</h4>
<p><a href="https://hackmd.io/UdIO2PR6QJqYxEBcmsm31Q" target="_blank" title="https://hackmd.io/UdIO2PR6QJqYxEBcmsm31Q">hackmd for polonius mini input language</a></p>



<a name="183098451"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183098451" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183098451">(Dec 10 2019 at 20:24)</a>:</h4>
<p>I don't think I liked the assertions that much in the end</p>



<a name="183098467"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183098467" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183098467">(Dec 10 2019 at 20:24)</a>:</h4>
<p>well it may be useful to be able to add some of them</p>



<a name="183098492"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183098492" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183098492">(Dec 10 2019 at 20:24)</a>:</h4>
<p>yeah</p>



<a name="183098550"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183098550" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183098550">(Dec 10 2019 at 20:25)</a>:</h4>
<p>as long as we can do arbitrary assertions in the rust unit tests, the more common ones can be available in the language as well</p>



<a name="183098643"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183098643" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183098643">(Dec 10 2019 at 20:26)</a>:</h4>
<p>maybe the 'one big function' setup was good</p>



<a name="183098700"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183098700" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183098700">(Dec 10 2019 at 20:26)</a>:</h4>
<p>(especially here as sometimes we're testing "temporary" relations when we're checking a computation, and sometimes a blackbox-y "check only the output")</p>



<a name="183098728"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183098728" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183098728">(Dec 10 2019 at 20:27)</a>:</h4>
<p>Yeah, I think in general "black-box" is better</p>



<a name="183098730"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183098730" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanda Stjerna <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183098730">(Dec 10 2019 at 20:27)</a>:</h4>
<blockquote>
<p>maybe the 'one big function' setup was good</p>
</blockquote>
<p>I guess that depends on whether we want to test things that involve multiple functions?</p>



<a name="183098749"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183098749" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183098749">(Dec 10 2019 at 20:27)</a>:</h4>
<p>Well, I think you want to be able to provide "prototypes" probably</p>



<a name="183098753"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183098753" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183098753">(Dec 10 2019 at 20:27)</a>:</h4>
<p>for fns that could get called</p>



<a name="183098760"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183098760" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183098760">(Dec 10 2019 at 20:27)</a>:</h4>
<p>but only one fn body</p>



<a name="183098820"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183098820" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183098820">(Dec 10 2019 at 20:28)</a>:</h4>
<p>we mostly test one function body today</p>



<a name="183098889"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183098889" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183098889">(Dec 10 2019 at 20:29)</a>:</h4>
<p>yeah I mean polonius is always testing one function at a time thus far</p>



<a name="183098905"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183098905" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183098905">(Dec 10 2019 at 20:29)</a>:</h4>
<p>yeah</p>



<a name="183099044"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099044" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099044">(Dec 10 2019 at 20:30)</a>:</h4>
<p>did y'all think about closures when talking about multiple functions or multiple prototypes ?</p>



<a name="183099091"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099091" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099091">(Dec 10 2019 at 20:31)</a>:</h4>
<p>not really, closures are (at least right now...) mostly handled 'outside'</p>



<a name="183099101"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099101" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099101">(Dec 10 2019 at 20:31)</a>:</h4>
<p>i.e., polonius doesn't have to know about them</p>



<a name="183099103"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099103" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099103">(Dec 10 2019 at 20:31)</a>:</h4>
<p>right?</p>



<a name="183099119"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099119" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099119">(Dec 10 2019 at 20:31)</a>:</h4>
<p>it's my understanding :)</p>



<a name="183099223"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099223" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099223">(Dec 10 2019 at 20:32)</a>:</h4>
<p>I think the older syntax modeled variance ?</p>



<a name="183099265"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099265" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099265">(Dec 10 2019 at 20:33)</a>:</h4>
<p><a href="https://github.com/nikomatsakis/borrowck/blob/master/test/borrowck-walk-linked-list.nll" target="_blank" title="https://github.com/nikomatsakis/borrowck/blob/master/test/borrowck-walk-linked-list.nll">https://github.com/nikomatsakis/borrowck/blob/master/test/borrowck-walk-linked-list.nll</a> is cute</p>



<a name="183099376"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099376" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099376">(Dec 10 2019 at 20:34)</a>:</h4>
<blockquote>
<p>I think the older syntax modeled variance ?</p>
</blockquote>
<p>yes it did</p>



<a name="183099382"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099382" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099382">(Dec 10 2019 at 20:34)</a>:</h4>
<p>it needed to in order to get <code>T1 &lt;: T2</code> correct</p>



<a name="183099406"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099406" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099406">(Dec 10 2019 at 20:34)</a>:</h4>
<p>probably we need that too</p>



<a name="183099503"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099503" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099503">(Dec 10 2019 at 20:35)</a>:</h4>
<p>well from this sketch it's pretty clear this is a "non-trivial" effort</p>



<a name="183099507"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099507" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099507">(Dec 10 2019 at 20:35)</a>:</h4>
<p>not super hard</p>



<a name="183099511"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099511" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099511">(Dec 10 2019 at 20:35)</a>:</h4>
<p>but it'll take some time</p>



<a name="183099523"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099523" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099523">(Dec 10 2019 at 20:35)</a>:</h4>
<p>might be nice to try and write-up some tests for interesting scenarios</p>



<a name="183099570"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099570" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099570">(Dec 10 2019 at 20:36)</a>:</h4>
<p>and see what's missing</p>



<a name="183099573"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099573" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099573">(Dec 10 2019 at 20:36)</a>:</h4>
<p>do you happen to remember what you didn't like with it ? it seems likely we can reuse some/a lot from it</p>



<a name="183099580"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099580" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099580">(Dec 10 2019 at 20:36)</a>:</h4>
<p>I'm trying to remember</p>



<a name="183099591"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099591" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099591">(Dec 10 2019 at 20:36)</a>:</h4>
<p>yeah, agreed, seems like a bit of work :)</p>



<a name="183099594"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099594" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099594">(Dec 10 2019 at 20:36)</a>:</h4>
<p>I remember having this feeling that it needed a bit more high-level stuff</p>



<a name="183099610"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099610" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099610">(Dec 10 2019 at 20:36)</a>:</h4>
<p>e.g., it'd be nice to be able to write <code>foo(a, b)</code> and have it figure out the proper relations from that</p>



<a name="183099629"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099629" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099629">(Dec 10 2019 at 20:36)</a>:</h4>
<p>also that I kind of started with something super minimal and glued a few things onto it and it was starting to feel hodge-podgy</p>



<a name="183099631"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099631" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099631">(Dec 10 2019 at 20:36)</a>:</h4>
<p>question is how deep we need to go now</p>



<a name="183099632"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099632" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099632">(Dec 10 2019 at 20:36)</a>:</h4>
<p>but I can't remember exactly why</p>



<a name="183099649"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099649" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099649">(Dec 10 2019 at 20:37)</a>:</h4>
<p>as at the time you didn't have the NLL test corpus in rustc</p>



<a name="183099653"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099653" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099653">(Dec 10 2019 at 20:37)</a>:</h4>
<p>yeah</p>



<a name="183099697"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099697" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099697">(Dec 10 2019 at 20:37)</a>:</h4>
<p>I can probably start this with the basis of the older language and the hackmd (wow you've written a lot &lt;3)</p>



<a name="183099712"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099712" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099712">(Dec 10 2019 at 20:37)</a>:</h4>
<p>and then we can iterate as needed</p>



<a name="183099729"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099729" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099729">(Dec 10 2019 at 20:38)</a>:</h4>
<p>I'm not sure how much to prioritize <em>but</em></p>



<a name="183099766"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099766" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099766">(Dec 10 2019 at 20:38)</a>:</h4>
<p>we don't need to block the PR on that tho</p>



<a name="183099769"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099769" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099769">(Dec 10 2019 at 20:38)</a>:</h4>
<p>it does seem like if we want to write unit tests</p>



<a name="183099776"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099776" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099776">(Dec 10 2019 at 20:38)</a>:</h4>
<p>we're going to want this</p>



<a name="183099785"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099785" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099785">(Dec 10 2019 at 20:38)</a>:</h4>
<p>yeah</p>



<a name="183099795"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099795" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099795">(Dec 10 2019 at 20:38)</a>:</h4>
<p>I wonder <span class="user-mention" data-user-id="116113">@lqd</span> if you could start with some of the scenarios you wanted to write</p>



<a name="183099802"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099802" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099802">(Dec 10 2019 at 20:38)</a>:</h4>
<p>and try to "model them" the way you'd want to write it so to speak</p>



<a name="183099805"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099805" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099805">(Dec 10 2019 at 20:38)</a>:</h4>
<p>sure</p>



<a name="183099814"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099814" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099814">(Dec 10 2019 at 20:38)</a>:</h4>
<p>one thing that's missing (e.g.) is that this doesn't have type parametesr on the function declaration</p>



<a name="183099818"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099818" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099818">(Dec 10 2019 at 20:38)</a>:</h4>
<p>e.g. to model <code>fn foo&lt;'a, 'b: 'a&gt;</code> etc</p>



<a name="183099843"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099843" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099843">(Dec 10 2019 at 20:39)</a>:</h4>
<p>(I think Albin had more use cases since we talked about it for the WIP PR)</p>



<a name="183099873"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099873" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099873">(Dec 10 2019 at 20:39)</a>:</h4>
<p>we need <code>rustc -Znll-facts</code> !</p>



<a name="183099926"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099926" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099926">(Dec 10 2019 at 20:40)</a>:</h4>
<p>don't we have that?</p>



<a name="183099949"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099949" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099949">(Dec 10 2019 at 20:40)</a>:</h4>
<p>/me confused</p>



<a name="183099960"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099960" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099960">(Dec 10 2019 at 20:40)</a>:</h4>
<p>not in a polonius unit test :)</p>



<a name="183099975"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099975" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099975">(Dec 10 2019 at 20:40)</a>:</h4>
<p>I mean it <em>is</em> another option, as an aside</p>



<a name="183099980"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099980" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099980">(Dec 10 2019 at 20:40)</a>:</h4>
<p>that we could invoke rustc to generate facts</p>



<a name="183099985"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099985" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099985">(Dec 10 2019 at 20:40)</a>:</h4>
<p>and write the "unit tests" in pure rust</p>



<a name="183099994"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099994" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099994">(Dec 10 2019 at 20:40)</a>:</h4>
<p>but I feel like there is some value in having this simplified model</p>



<a name="183099998"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183099998" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183099998">(Dec 10 2019 at 20:40)</a>:</h4>
<p>maybe not that much though :)</p>



<a name="183100005"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183100005" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183100005">(Dec 10 2019 at 20:40)</a>:</h4>
<p>it'd help with validation, but not really with new facts ofc</p>



<a name="183100023"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183100023" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183100023">(Dec 10 2019 at 20:41)</a>:</h4>
<p>yeah, that's part of the problem</p>



<a name="183100048"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183100048" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183100048">(Dec 10 2019 at 20:41)</a>:</h4>
<p>ok, I gotta go finish up a few other things</p>



<a name="183100053"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183100053" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183100053">(Dec 10 2019 at 20:41)</a>:</h4>
<p>I don't expect us to add a million more, that being said</p>



<a name="183100063"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183100063" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183100063">(Dec 10 2019 at 20:41)</a>:</h4>
<p>indeed, one hopes that this will slow down</p>



<a name="183100067"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183100067" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183100067">(Dec 10 2019 at 20:41)</a>:</h4>
<p>oh right, it's 40mins in</p>



<a name="183100082"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183100082" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183100082">(Dec 10 2019 at 20:41)</a>:</h4>
<p>thanks a lot <span class="user-mention" data-user-id="204115">@Albin Stjerna</span> and <span class="user-mention" data-user-id="116009">@nikomatsakis</span> :)</p>



<a name="183100133"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183100133" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183100133">(Dec 10 2019 at 20:42)</a>:</h4>
<p>I'll try to work on this this week</p>



<a name="183100175"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183100175" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183100175">(Dec 10 2019 at 20:42)</a>:</h4>
<p>(having "pure rust" unit tests would also help ensure the rustc driver has access to the facts, like Vytautas needed)</p>



<a name="183100258"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/186049-t-compiler/wg-polonius/topic/meeting%202019.12.10/near/183100258" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/186049-t-compiler/wg-polonius/topic/meeting.202019.2E12.2E10.html#183100258">(Dec 10 2019 at 20:43)</a>:</h4>
<p>(for one of Niko's great ideas)</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>